Expressing Property Specification Patterns with OCL
نویسندگان
چکیده
The textual Object Constraint Language (OCL) is an official part of the Unified Modeling Language (UML). OCL is primarily used to formulate restrictions over UML models, in particular, invariants and operation preand postconditions in the context of class diagrams. However, OCL is missing means to specify constraints over the dynamic behavior of a UML model. We have therefore developed a temporal extension of OCL that enables modelers to specify behavioral state-oriented constraints. That work provides an alternative to the rather cryptic temporal logic formulae that are commonly used to specify behavioral system properties. This article now illustrates that our OCL extension allows for specifying all kinds of properties that are regarded as relevant in practice. We present according temporal OCL expressions for property specification patterns that have been identified in the area of formal specification.
منابع مشابه
Formal Description of OCL Specification Patterns for Behavioral Specification of Software Components
The Object Constraint Language (OCL) is often used for behavioral specification of software components. One current problem in specifying behavioral aspects comes from the fact that editing OCL constraints manually is time consuming and error-prone. To simplify constraint definition we propose to use specification patterns for which OCL constraints can be generated automatically. In this paper ...
متن کاملTime-Based Constraints in the Object Constraint Language
The Object Constraint Language (OCL) is a specification language which could be used for describing constraints on object-oriented models and other modelling artifacts. OCL is a part of the Unified Modelling Language (UML) which is the de facto standard for objectoriented analysis and design. OCL is designed to be used by software engineers and modellers and requires only modest mathematical tr...
متن کاملMeasuring Test Properties Coverage for Evaluating UML/OCL Model-Based Tests
We propose in the paper a test property specification language, dedicated to UML/OCL models. This language is intended to express temporal properties on the executions of the system, that one wants to test. It is based on patterns, specifying the behaviours one wants to exhibit/avoid, and scopes, defining the piece of execution trace on which a given pattern applies. Each property is a combinat...
متن کاملObject Constraint Language (OCL): A Definitive Guide
The Object Constraint Language (OCL) started as a complement of the UML notation with the goal to overcome the limitations of UML (and in general, any graphical notation) in terms of precisely specifying detailed aspects of a system design. Since then, OCL has become a key component of any model-driven engineering (MDE) technique as the default language for expressing all kinds of (meta)model q...
متن کاملImproving the OCL Semantics Definition by Applying Dynamic Meta Modeling and Design Patterns
OCL is a standard specification language, which will probably be supported by most software modeling tools in the near future. Hence, it is important to OCL to have a solid formal foundation, for its syntax and its semantic definition. Currently, OCL is being formalized by metamodels expressed in MOF, complemented by well formedness rules written in the own OCL. This recursive definition not on...
متن کامل